Postfix-Mail-Server

Die Übersichtlichkeit der Seite wird durch Javascript erhöht. Ist dies aktiviert, werden die Texte unter den Überschriften durch Anklicken der Überschriften ein- und ausgeblendet.

Zweck

Mit Hilfe eines Mailservers ist es möglich, sich Systemnachrichten per Mail zukommen zu lassen. Ein recht einfach zu konfigurierendes Programm hierfür ist postfix und ich möchte hier die Schritte der Einrichtung festhalten.

nach oben

Installation

sudo apt-get install postfix libsasl2-modules bsd-mailx 

Bei mir war standardmäßig alles außer postfix selbst vorhanden

nach oben

Einrichtung

Die meisten Sachen werden bei der Installation abgefragt. Ich hatte mich für die Sattelittenvariante entschieden. Den Domainname habe ich als meinen Rechnernamen belassen. Bei Relay-Server hatte ich mx.freenet.de als smtp-Server angegeben.

nach oben

/etc/postfix/main.cf

Die zentrale Konfigurationsdatei wird somit bereits vorkonfiguriert.

smtpd_banner = $myhostname ESMTP $mail_name (Debian/GNU)
biff = no

# appending .domain is the MUA's job.
append_dot_mydomain = no
readme_directory = no

# TLS parameters
smtpd_tls_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
smtpd_tls_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
smtpd_use_tls=yes
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache

myhostname = SilentDesk
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
mydestination = SilentDesk, localhost.localdomain, localhost
relayhost = mx.freenet.de
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
mailbox_command = procmail -a "$EXTENSION"
mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = loopback-only

Sie muss danach noch um einige Einträge ergänzt werden:

# Autentifizierzung:
smtp_sasl_auth_enable = yes
# noplaintext weglassen, wenn Passwörter im Klartext übertragen werden müssen:
# (nicht empfohlen, nur wenn's anders nicht funktioniert)
smtp_sasl_security_options = noplaintext noanonymous
smtp_sasl_password_maps = hash:/etc/postfix/sasl_password

# Korrekten Absender setzen
sender_canonical_maps = hash:/etc/postfix/sender_canonical

#Verschlüsselung
smtp_tls_security_level = may

nach oben

Passwortdatei anlegen

sudo touch /etc/postfix/sasl_password 
mx.freenet.de nutzername:passwort

Bei freenet ist beim Nutzername @freenet.de anzuhängen.

Der Passwortdatei sollten dann die Leserechte entzogen werden:

sudo chmod 600 /etc/postfix/sasl_password

Jetzt muss noch die Datenbank erzeugt werden:

sudo postmap hash:/etc/postfix/sasl_password 

nach oben

/etc/postfix/sender_canonical

sudo nano /etc/postfix/sender_canonical
maik friemel.hannover@freenet.de
root friemel.hannover@freenet.de

Zu guter Letzt erstellt man auch aus dieser Datei eine Postfix-Datenbank und lädt die Postfix-Konfiguration im Terminal neu:

sudo postmap /etc/postfix/sender_canonical

nach oben

Mailumleitung

Damit die Email an den jeweiligen Benutzer direkt an eine Emailadresse verschickt/weitergeleitet wird, muss diese Weiterleitung als Alias eingerichtet werden:

sudo nano /etc/aliases
mailer-daemon: postmaster
postmaster: root
nobody: root
hostmaster: root
usenet: root
news: root
webmaster: root
www: root
ftp: root
abuse: root
noc: root
security: root
root: maik
maik: nutzername@web.de

Danach muss die Datenbank wie folgt aktualisiert werden:

sudo newaliases

nach oben

Postfix-Dienst neu laden:

sudo /etc/init.d/postfix reload

bzw neu mit systemd:

systemctl status postfix.service
systemctl start postfix.service
systemctl stop postfix.service
systemctl restart postfix
sudo postfix reload

nach oben

Funktionstest

Eine Textdatei schreiben und diese wie folgt testweise versenden:

mail -s "test" empfänger@empfängerserver.domain < testmail.txt

Wählt mann eine eigene Mailadresse, wird man sehen, ob die Mail ankommt. Man kann sich allerdings auch den log dafür ansehen:

sudo less  /var/log/mail.log

Der sollte dann folgende Meldung enthalten:

relay=mx.freenet.de[195.4.92.210]:25, delay=2.9, 
delays=0.81/0.69/1.2/0.19, dsn=2.0.0, status=sent

nach oben